Data communication connections and the protocols used in them are usually depicted using the Open Systems Interconnection (OSI) reference model which comprises seven protocol layers. The idea of having protocol layers is that the functions of the layers and the interfaces between them are specified in detail, and a protocol in use in a given layer of the protocol stack may be changed into another one when desired. To ensure the interchangeability, the protocol layers only operate on the basis of information contained in the fields of their own particular protocol frames.
Future communications networks, especially wireless networks, will employ terminals which will have different characteristics and some of which will be more versatile than current terminals. As there will be terminals of different qualities, the application software must to a certain extent be able to adapt to the characteristics of the terminals. Some applications may only be used on certain terminals and with certain protocols, but some of the programs will know how to adapt to the characteristics of the terminal and the data connection in use. If a terminal supports multiple protocol stacks, the protocols used can be negotiated when establishing the data connection. So, an application program does not necessarily have knowledge of the protocol stack on which it is running.
Resources management for data networks will be more complicated because of a wider selection of terminals, increased number of applications, simultaneous use of different protocol stacks and increased use of the wireless network for packet switched data connections, among other things. Problems will be caused especially by the fact that for a reason or another data networks comprise heterogeneous parts. A packet switched data network, for example, may comprise a fixed and wireless part, or a private subnetwork in addition to the public fixed packet data network. Specifications of connections must be communicated across the interfaces, between the different parts of the network: for instance, if one part has less resources than another, it may be necessary to limit the amount of information transferred between them, or if different parts of the network use different meters for the quality of the connection, these quality parameters will have to be replaced by others. If a connection passes through a different part of the network and returns to a network of the original kind, the connection after that second interface should be as much as possible like the original connection. So, resources management at the interfaces and connection mappings across the interfaces should be coordinated.
FIG. 1 shows a packet switched data connection according to the prior art over a radio link. The protocol stacks used in the equipment are shown at the bottom, and the top of the protocol stack may be dynamically negotiated. The lowest two protocol layers 103 and 104 are always the same both in the transmitter (TX) 101 and in the receiver (RX) 102. These protocol layers are associated with the physical link and its control, in this example with radio wave frequencies, transmission power and possible error correction and retransmission methods. In the transmitter of FIG. 1, the top of the protocol stack may be selected from among three alternatives (105, 106, 107), so the transmitter may connect with receivers that support any of these alternatives. In the receiver of FIG. 1, the top of the protocol stack may be selected from among two alternatives (105, 106). The protocols used are negotiated during the connection setup stage so that both apparatus in FIG. 1 will use the same top of the protocol stack, either 105 or 106.
FIG. 2 shows a prior-art packet switched data connection at the interface between a fixed network and a wireless mobile radio access network. The radio access network comprises base stations and radio network controllers. A wireless terminal 201 is connected via a base station 202 to a radio network controller 203. The radio network controller is connected to a network node 204 at the border of the radio access network and the fixed network. By way of example, a second terminal 205 is shown connected directly to the network node. More likely it will be connected to the network node via routers and other network elements.
FIG. 2 shows, at the bottom, the protocol stacks 206-210 of the apparatus. Each protocol layer's protocol is denoted by the letter L plus the number of the protocol layer. In the lowest two protocol layers, which are different for the fixed network and wireless network, the protocols are marked by symbols in which the letter C refers to a fixed network and the letter R stands for radio access network.
The radio access network employs two different first-layer protocols, which are in FIG. 2 denoted by symbols L1/R1 and L1/R2. Protocol L1/R1 is associated with the radio interface between a wireless terminal and base station, so it is used in the protocol stack 206 of the wireless terminal and in the protocol stack 207 of the base station at the radio interface side. Protocol L1/R2 is associated with radio access network connections over a fixed line, so it is used in the base station protocol stack at the radio network controller side, in the radio network controller's protocol stack, and in the protocol stack 209 of the network node 204 at the radio access network side. All radio access network elements as well as the wireless terminal use the same protocol L2/R in the second protocol layer or, if there are sublayers in the second protocol layer, at least its highest sublayer uses the same protocol. In the radio access network elements, protocol stacks 207 and 208 often cover only the lowest two layers.
At the fixed network side, between apparatus 204 and 205, the packet switched data connection is carried on top of a so-called core network bearer service. The term bearer service refers in this context mainly to the second layer of the protocol stack. The characteristics, say, data transfer capacity or quality, of this core network bearer service are influenced by the physical connections used and the methods associated therewith. The quality of the packet switched data connection proper is usually specified at a higher level, e.g. as quality of service in the IPv6 protocol in the third protocol layer, and the bearer service is chosen such that it can meet the connection quality requirements.
In the network node 203 or alternatively in node 204 the packet switched data connection carried upon a core network bearer service has to be taken on top of a radio access bearer service. In a wireless mobile radio access network there are a certain number of different radio access bearer services, and the qualities that describe them include e.g. the transfer rate, bit error rate (BER) and whether or not the reception of a transferred packet is verified as well as the size of the transfer window used for the verification. The network node must map the core network bearer service to a radio access bearer service that has enough capacity to guarantee a desired connection quality but without wasting radio resources, however. The network node's protocol stack 209 uses in the lowest two layers of the protocol stack fixed network protocols at the fixed network side, and radio access network protocols at the radio access network side.
The third-layer protocol is determined on the basis of the protocol used in the packet switched data network. When a packet switched data connection is established, terminals 201 and 205 may negotiate the protocols used for the end-to-end connection. These protocols usually are protocols on top of the third protocol layer, and they are identical (or at least compatible) in the protocol stack 206 of the wireless terminal and protocol stack 210 of the second terminal. The upper protocol layers do not know that the end-to-end connection between the terminals has crossed a radio interface at some point; as far as they are concerned, the connection could as well be an end-to-end fixed connection.
Prior-art end-to-end connections capable of utilizing dynamically negotiated protocol stacks involve certain problems. For example, in situations where an application knows how to present data as either text, pictures or video, it could exclude the video if it knew that the capacity of the data connection is insufficient to transfer a video image. Moreover, the lower protocol layers do not have knowledge of the capabilities of the upper protocol layers as regards reception of data packets that are in disarray and some of which are missing. If a lower protocol layer does not make sure that the data packets are in order and a higher protocol expects them to be, problems are likely to occur.
A prior-art multimedia application may use either one or more data connections for the transfer of data. For example, data in text format may be transferred via one connection, a video image via a second and sound via a third one, and, in addition, the application may all the time have a connection open through which to transfer commands associated with the synchronization of the objects presented. Another alternative is that these data travel through a single data connection, i.e. the application multiplexes the data streams into a single data stream and an application at the other end of the connection demultiplexes them so that they become separate again. If an application uses multiple separate data connections, problems arise if the lower protocol layers do not understand that these connections belong to one and the same application. In a situation where only part of the data can be delivered because of scarce resources, this may result in that the most important packet switched data connection, in which the control commands are transferred, is slowed down or even disconnected.
For prior-art packet switched data network interfaces it is often necessary to either prioritize the data to be transferred, because of scarcity of data transfer resources, or map the connection quality defined in a certain manner to a connection defined by means of other parameters. In these situations, decision-making in the lower protocol layers would benefit if those layers had knowledge of the information transferred over the connection. For example, knowledge of the typical data transfer rate for the connection would help decide how much resources should be reserved for the connection. In the case of prioritization, more detailed knowledge about the information transferred (whether it is, say, control commands associated with the application software or presentable data) would help in deciding what is the most important information.